(set-logic ALL)
(set-option :produce-unsat-assumptions true)
(declare-const x0 (_ BitVec 4))
(declare-const x1 (_ BitVec 2))
(declare-const x2 (_ BitVec 2))
(declare-const x3 (_ BitVec 2))
(declare-const x4 Float16)
(define-fun f0 ((a Float16)) Bool (fp.gt a (_ +zero 5 11)))
(define-fun f1 ((a Float16)) (_ BitVec 4) (ite (f0 a) x0 #b0000))
(define-fun f2 ((a Float16)) (_ BitVec 2) ((_ extract 1 0) (f1 a)))
(check-sat-assuming
  (
   (! (bvult x2 (f2 (_ +zero 5 11))) :named a0)
   (! (= x1 x2 x3) :named a1)
   (! (= x4 ((_ to_fp_unsigned 5 11) RNE x3)) :named a2)
  )
)
(get-unsat-assumptions)
